package com.java.yz.day12.ketang;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

/*File类的成员方法
    创建功能
        public boolean createNewFile()
        public boolean mkdir()
        public boolean mkdirs()
    删除功能
        public boolean delete()
    重命名功能
        public boolean renameTo(File dest)
    判断功能
        public boolean isDirectory()    判断是否是文件夹
        public boolean isFile()         判断是否是文件
        public boolean exists()         判断目标File对象是否存在
        public boolean canRead()        判断是否是可读文件
        public boolean canWrite()       判断是否是可写入文件
        public boolean isHidden()       判断是否是隐藏文件
    基本获取功能
        public String getAbsolutePath()     获取文件的绝对路径
        public String getPath()             获取文件的相对路径
        public String getName()             获取文件的文件名
        public long length()                获取文件的字节流大小
        public long lastModified()          获取文件最后修改的时间戳
    高级获取功能
        public String[] list()   获取文件夹下的所有文件和文件夹的名称组成的数组
        public File[] listFiles()  获取文件夹下的所有文件和文件夹的File对象组成的数组
        //这样的好处，可以来判断我遍历的这个是文件还是文件夹，避免了下次再次封装成文件夹

 */
public class FileDemo2 {
    public static void main(String[] args) throws IOException {
        File file = new File("D:\\data\\Java_data\\bigdata_24\\bigdata_24\\src\\com\\java\\yz\\day12\\ketang\\b.c.v");
        //创建功能
        //public boolean createNewFile()  创建一个文件
        //file.createNewFile(); //如果文件存在就不在创建，

        //public boolean mkdir()  创建一个文件夹
        //System.out.println(file.mkdir());  //路径加上文件夹名称就成功创建了一个文件夹

        //public boolean mkdirs() 创建多个文件夹
        //file.mkdirs();  //路径加上文件夹名.文件夹名....

        //public boolean delete() 删除功能
        //创建一个文件，其中放入要删除文件的地址，在调用delete（）方法就可以删除
//        File file1 = new File("D:\\data\\Java_data\\bigdata_24\\bigdata_24\\src\\com\\java\\yz\\day12\\ketang\\b");
//        file.delete();
//        file1.delete();

        //public boolean renameTo(File dest) 将文件重新命名
//        //需要创建两个文件，一个是之前名字的文件，后面一个是要改名的文件
//        File file1 = new File("D:\\data\\Java_data\\bigdata_24\\bigdata_24\\src\\com\\java\\yz\\day12\\ketang\\a.txt");
//        File file2 = new File("D:\\data\\Java_data\\bigdata_24\\bigdata_24\\src\\com\\java\\yz\\day12\\ketang\\aaa.txt");
//        //把a.txt的文件改名为aaa.txt
//        file1.renameTo(file2);  //这样就改名成功了

//        File file1 = new File("D:\\data\\Java_data\\bigdata_24\\bigdata_24\\src\\com\\java\\yz\\day12\\ketang\\b.txt");
//        long l = file1.lastModified();//获取的时间戳
//        Date date = new Date(l);
//        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
//        System.out.println(simpleDateFormat.format(date));
//        //这样就能获取最后修改的时间
        File file1 = new File("D:\\");
        String[] list = file1.list();
        for (String s : list) {
            System.out.println(s);
        }

        File[] files = file1.listFiles();
        for (File file2 : files) {
            System.out.println(file2);
        }

    }
}
